﻿#region Using directives

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.Serialization;
using MCMLXVII.BackEnd.Services.Common.Messages;
#endregion

namespace MCMLXVII.BackEnd.Services.OrganizationChart.Messages
{
    [Serializable()]
    [System.Xml.Serialization.XmlType(Namespace = "http://tempuri.org/")]
    public class msgMoveNodeRequest : IOrganizationTreeNodeOperation
    {
        private int _Nodeid;
        private int _DestinationNodeID;
        public int DestinationNodeID
        {
            get
            {
                return _DestinationNodeID;
            }
            set
            {
                _DestinationNodeID = value;
            }

        }

        private int _UpdateSequence;
        public int UpdateSequence
        {
            get
            {
                return _UpdateSequence;
            }

            set
            {
                _UpdateSequence = value;
            }
        }

        public msgMoveNodeRequest()
        {

        }

        public msgMoveNodeRequest(int NodeID, int destinationNodeID, int updateSequence)
        {
            _Nodeid = NodeID;
            _UpdateSequence = updateSequence;
            _DestinationNodeID = destinationNodeID;
        }

        #region IOrganizationTreeNodeOperation Members
        public int NodeID
        {
            get { return _Nodeid; }
            set { _Nodeid = value; }
        }


        #endregion

    }

    [Serializable()]
    [System.Xml.Serialization.XmlType(Namespace = "http://tempuri.org/")]
    public class msgMoveMemberRequest : msgMoveNodeRequest
    {
        private int _MemberID;
        public int MemberID
        {
            get
            {
                return _MemberID;
            }
            set
            {
                _MemberID = value;
            }

        }


        public msgMoveMemberRequest():base()
        { 
        }

        public msgMoveMemberRequest(int nodeID, int memberID, int destinationNodeID, int updateSequence):base(nodeID, destinationNodeID, updateSequence)
        {
            _MemberID = memberID;
        }

    }
}
